import axios from 'axios';

interface ProductModelParams {
    name: string;
    id?: string;
    identifier: string;
    productId: string;
    datatype: string;
    specs: any;
    sort: number;
    icon: string;
}

/**
 * 新建产品信息
 * @param data
 * @returns
 */
export function createProductInfo(data: any) {
    return axios.post('/api/v1/product/add', data);
}
/**
 * 删除产品信息
 */
export function deleteProductInfo(data: { id: string }) {
    return axios.post('/api/v1/product/delete', data);
}

/**
 * 编辑产品信息
 * @param data
 * @returns
 */
export function editProductInfo(data: any) {
    return axios.post('/api/v1/product/edit', data);
}

/**
 * 获取产品详情
 */
export function getProductInfo(data: any) {
    return axios.post('/api/v1/product/detail', data);
}
/**
 * 获取产品列表
 */
export function getProductList(data: {
    current: number;
    size: number;
    [x: string]: any;
}) {
    return axios.post('/api/v1/product/page', data);
}
/**
 * 获取产品属性列表
 */
export function getProductModelList(data: { productId: string }) {
    return axios.post('/api/v1/thingsModel/list', data);
}
/**
 * 获取产品属性详情
 */
export function getProductModelDetail(data: { productId: string }) {
    return axios.post('/api/v1/thingsModel/detail', data);
}
/**
 * 编辑产品属性
 */
export function editProductModel(data: ProductModelParams) {
    return axios.post('/api/v1/thingsModel/edit', data);
}
/**
 * 新增产品属性
 */
export function addProductModel(data: ProductModelParams) {
    return axios.post('/api/v1/thingsModel/add', data);
}

/**
 * 删除产品属性
 */
export function deleteProductModel(data: { id: string }) {
    return axios.post('/api/v1/thingsModel/delete', data);
}

/**
 * 获取产品告警告警
 */
export function productAlertList(data: { productId: string }) {
    return axios.post('/api/v1/productAlert/list', data);
}
/**
 * 获取产品属性告警
 */
export function productAlertDetail(data: { productId: string }) {
    return axios.post('/api/v1/productAlert/detail', data);
}
/**
 * 编辑产品告警
 */
export function editProductAlert(data: any) {
    return axios.post('/api/v1/productAlert/edit', data);
}
/**
 * 新增产品告警
 */
export function addProductAlert(data: any) {
    return axios.post('/api/v1/productAlert/add', data);
}

/**
 * 删除产品告警
 */
export function deleteProductAlert(data: { id: string }) {
    return axios.post('/api/v1/productAlert/delete', data);
}
